如何设置表单查重?
场景描述: 表单查重是非常常见的使用场景,比如说当我们新建一个事务的时候,不希望有重复的事务,那么当事务标题出现重复时,就需要系统可以提示。

一、表单校验
通过使用表单校验规则,我们可以使表单在保存的时候自动检查我们设置好的条件是否满足,不满足则提示。

二、条件设置
表单校验的规则可以借助sql语句实现查重。
基本逻辑: 当表的已有数据中,存在某条数据的标题等于当前表单的标题,而且objectid不等于当前表单的objectid,就说明事务标题在两条不同的数据中重复了。
sql具体语句可参考下图写法,修改表名和条件即可,如果具体使用场景中还有更多的条件,可以在后面继续加条件。

三、拓展使用
在上面的例子中,我们实际只要求事务标题不重复,是一个比较简单的场景。在很多有流程的表单中,还会经常有下面这种场景:比如说每条事务是需要审批的,在审批未完成之前,不可以发起同样标题的第二条事务。
基本逻辑: 这个场景中,就是比上面的场景多了一个判断条件,就是每条事务的状态,当事务状态不是"已完成"时,则不可以填写标题重复的数据,sql参考如下:

注:在系统中事务不同的状态会用不同的数字表示,具体可参考流程状态编码。